package cn.edu.ctbu.datajpa01.repository;

import cn.edu.ctbu.datajpa01.domain.Teacher;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;

import java.util.List;

public interface TeacherRepository extends JpaRepository<Teacher,Integer> {
    /**
     * 按工号no查询
     * @param no
     * @return
     */
    Teacher findByNo(String no);
    /**
     * 按姓名查询
     * @param name
     * @return
     */
    List<Teacher> findByNameLike(String name);
    /**
     * 按按工号进行查询  ，查找工号最大的教师
    **/
    //自定义查询方法，用于查找工号前缀的最大值
    @Query("SELECT SUBSTRING(t.no, 1, 4) FROM tb_teacher t GROUP BY SUBSTRING(t.no, 1, 4) ORDER BY SUBSTRING(t.no, 1, 4) DESC")
    String findMaxNoPrefix();
    // 方法名为findByNoStartingWith，以按照工号前缀(前四位)查询
    List<Teacher> findByNoStartingWith(String noPrefix);
}
